<?php

/**
 * @author Paweł Napieracz
 * @version 1.0
 */
class Helper_Uzytkownik {

    public static function wyloguj() {
        session_destroy();
    }

    /**
     *
     * @param type $login
     * @param type $haslo
     * @return <int/bool> zwraca false w przypadku nie znalezienia usera, 
     * lub jego status w przypadku odnalezienia!!!!!!!!!!!
     */
    public static function zaloguj($login, $haslo) {
        $userTab = new AutoDB('uzytkownik');
        $user = $userTab->Select('id, id_grupa, login, haslo, status')->
                Where(array('login' => $login,
                    'haslo' => md5($haslo . 'login' . $login)))->
                GetFirst();

        $logTab = new AutoDB('cms_log');
        $log = $logTab->Create();
        /* Jeżeli niewłaściwe hasło lub login */
        if ($user === false) {
            //logowanie nieudanej próby
            $log->Set('id_uzytkownik', 0);
            $log->Set('akcja', 'Nieudane logowanie. L: ' . $login);
            $log->Set('data', date('Y-m-d H:i:s'));
            $log->Set('ip', $_SERVER['REMOTE_ADDR']);
            $log->Save();
            return false;
        }

        /* Zapisywanie ID użytkownika do sesji */
        $_SESSION['uzytkownik_id'] = $user['id'];

        /* Logowanie udanej próby */
        $log->Set('id_uzytkownik', $user['id']);
        $log->Set('akcja', 'Udane logowanie. L: ' . $login);
        $log->Set('data', date('Y-m-d H:i:s'));
        $log->Set('ip', $_SERVER['REMOTE_ADDR']);
        $log->Save();
        return $user['status'];
    }

}

?>
